home *** CD-ROM | disk | FTP | other *** search
- {3Cyclic redundancy checksum
- {5A lame routine by Terminator/Destiny
-
-
- {6Hullo, {7this routine will stop people
- changing the texts in your creations.
- Its really simple. Unfortunatly, It
- will only checksum data and not code.
- I.e.
-
- {4Dc.b "Greetings to the triple headed
- frog from saturn"
-
- {1can be checksumed but ...
-
- {4Loop: Bra.s Loop(Or any other code)
-
- {1can't be checksummed. This is coz the
- code could load at a different address
- i.e. Say when you assembled it, the
- routine resided at 20000 a disassembly
- of $20000 would reveal ...
-
- {420000 Bra $20000
-
- {1Now, If the executable loaded at
- $40000, Then the code would read
-
- {440000 Bra $40000
-
- {1If you cant understand that then you
- must be dull as fuck. But never mind.
-
- {4Okay, all you have to do is...
-
-
- Section Checksum,code_C
-
- Jsr Checksum(pc)
- Cmp.l #$00000000,d1
- Beq.s Checksumright
-
- Jmp $fc00d0
- {1Or whatever you wanna do when the text
- has been changed. (I like to display a
- nasty message first personally!)
-
- {5Checksumright:
- ...
- Your code goes here
- ...
- Rts
-
-
- {5Checksum
- Lea Datastart(pc),a0
- Move.l #Dataend-Datastart,d0
- {5Loop:
- {4 Add.l (a0)+,d1
- dbra d0,loop
- Rts
-
- {5Datastart:
- Screen dc.l 0 Logo incbin
- "Df0:Graphics/logo.raw"
-
- {5Music incbin
- "DF0:music/mod.cheesy module"
-
- {5scrolltext dc.b "Hi welcome to this
- checksummer!"
- even
- {4Dataend:
-
- {5Thats it!
- Assemble it.
- }1(DONT RUN IT! - IT WILL CRASH!)
-
- {3Click on Debug (Or Right amiga & D)
- trace your way through the prog using
- Ctrl and T Note what D1 contains after
- the Jsr Checksum Write it down. Now
- press CRTL & C to go back to the
- {4Devpac {3screen Change the cmp.l
- #$00000000,d1 to whatever the number
- you wrote down was! Reassemble.
- Debug again. Trace your way through a
- few lines to ensure that you have put
- the right number in the right place!
- If all goes well, the texts,logos &
- music and anything else you put in
- your data division will be
- unchangable! (Without potch anyway)
- Once assembled to an executable,
- {4Lamer's{3 will have a hard time changing
- anything. And If someone is clever
- enough to disassemble the whole
- program, change the checksum and the
- texts, I think they would also be
- clever enough to write the routines in
- your program anyway.
-
- {2I.e. Only incompetant lamers with
- file editors will try to change texts.
-
- {6Terminator
-
-
-
-
-
-